1. Field of the Invention
The present invention generally relates to the field of computer-based testing, and in particular, the present invention relates to an expandable test driver used to deliver a computer-based test to an examinee, where plugins are used to expand the functionality of the test driver during delivery of the computer-based test.
2. Background of the Related Art
For many years, standardized testing has been a common method of assessing examinees as regards educational placement, skill evaluation, etc. Due to the prevalence and mass distribution of standardized tests, computer-based testing has emerged as a superior method for providing standardized tests, guaranteeing accurate scoring, and ensuring prompt return of test results to examinees.
Tests are developed based on the requirements and particulars of test developers. Typically, test developers employ psychometricians or statisticians and psychologists to determine the specific requirements specific to human assessment. These experts often have their own, unique ideas regarding how a test should be presented and regarding the necessary contents of that test, including the visual format of the test as well as the data content of the test. Therefore, a particular computer-based test has to be customized to fulfill the client's requirements.
FIG. 1 illustrates a prior art process for computerized test customization, denoted generally by reference numeral 10. First, a client details the desired test requirements and specifications, step 12. The computerized test publisher then creates the tools that allow the test publisher to author the items, presentations, etc., required to fulfill the requirements, step 14. The test publisher then writes an item viewer, which allows the test publisher to preview what is being authored, step 16.
An item presenter is then written to present the new item, for example, to the test driver, step 18. Presenting the new item to the test driver requires a modification of the test driver's executable code. The test driver must be modified so that it is aware of the new item and can communicate with the new item presenter, step 20. The test packager must then also be modified, step 22. The test packager, which may also be a compiler, takes what the test publisher has created and writes the result as new object codes for the new syntax. Subsequently, the scoring engine must also be modified to be able to score the new item type, step 24. Finally, the results processor must be modified to be able to accept the new results from the new item, step 26. This process requires no less than seven software creations or modifications to existing software.
U.S. Pat. No. 5,827,070 (Kershaw et al.) and U.S. Pat. No. 5,565,316 (Kershaw et al.) are incorporated herein by reference. The '070 and '316 patents, which have similar specifications, disclose a computer-based testing system comprising a test development system and a test delivery system. The test development system comprises a test document creation system for specifying the test contents, an item preparation system for computerizing each of the items in the test, a test preparation system for preparing a computerized test, and a test packaging system for combining all of the items and test components into a computerized test package. The computerized test package is then delivered to authorized examinees on a workstation by the test delivery system.
FIGS. 2A and 2B illustrate the test preparation process as disclosed in the '070 and '316 patents. Test developers assemble the test as shown at 32. As shown at 36, item selection is preferably automated (AIS) using the test development/document creation (“TD/DC”) system or an equivalent test document creation system. Using “TD/DC”, test developers enter the test specifications into the “TD/DC” system. Based on these specifications, “TD/DC” searches its central database for items, which satisfy the test specification, e.g., 50 math questions, 25 of which are algebra problems and 25, which are geometry problems. Then, the test developers review the items selected by “TD/DC” for sensitivity and overlap constraints described in the background section. If the test developer decides that the sensitivity or overlap constraints are not satisfied by the current selection of items, certain items may be designated to be replaced by another item from the database. In addition, test developers provide a test description specifying the directions, messages, timing of sections, number of sections of the test, etc. as shown at 42. If a computer adaptive test (CAT) is to be run, test developers may run a computer adaptive test simulation at 34, which are known to skilled test developers. Using the Test Preparation Tool (TPT) and TOOLBOOK 46, the test preparation system (“TPS”) prepares the test level components as shown at 50. TOOLBOOK is commercially available from Asymetrix Corporation. The test level components include scripts 66, item table block sets 56, general information screens 58, direction screens 60, message screens 62, and tutorial units 64. Each of the test components will be described in detail below. As the components are prepared, the TPT stores them in a TPS network directory 52. Then, the components are entered into the TPS Production database 54. The components stored in the TPS Production database 54 will be retrieved during test packaging.
U.S. Pat. No. 5,513,994 (Kershaw et al.), which is incorporated herein by reference, discloses a centralized administrative system and method of administering standardized test to a plurality of examinees. The administrative system is implemented on a central administration workstation and at least one test workstation located in different rooms at a test center. The administrative system software, which provides substantially administrative functions, is executed from the central administration workstation. The administrative system software, which provides function carried out in connection with a test session, is executed from the testing workstations.
None of the Kershaw et al. patents appear to make any mention of how modifications may be made to the computer-based testing system to incorporate a particular client's test specification. What is required is a system that, for example, allows the test driver to be expanded to support new item types, scoring algorithms, etc., without making any changes to the test driver's executable or recompiling the test driver to support the new functionality as described below in connection with the present invention. Other features and advantages in addition to the above, or in the alternative to the above, are described in the Summary of the Invention and the Detailed Description provided below.